Public Class ThreeDUniverseDownloader
    Inherits BaseDownloader

    Private Const BASE_PAGE_URL As String = "http://www.3duniverse.co.za/viewproduct.asp?PID={0}"
    Private Const IMAGE_URL As String = "http://www.3duniverse.co.za/uploads/ProductImages/{0}"

    Private Const URL_TO_REMOVE As String = "http://www.daz3d.com/i.x/shop/itemdetails/-/?item="

    Private Const PRODUCT_CODE_START_MATCH As String = ">product code:&nbsp;&nbsp;"
    Private Const PRODUCT_CODE_END_MATCH As String = "("

    Private Const REQUIRED_PRODUCT_START_MATCH As String = "<span class=""requiredProduct"">Required Products</span>"
    Private Const REQUIRED_PRODUCT_END_MATCH As String = "</td>"
    Private Const REQUIRED_PRODUCT_SEPERATOR_START As String = "<A HREF="
    Private Const REQUIRED_PRODUCT_SEPERATOR_START_END As String = "=rq"">"
    Private Const REQUIRED_PRODUCT_SEPERATOR_END As String = "</A>"

    Private Const IMAGE_URL_START_MATCH As String = "<img border=0 src=""/uploads/ProductImages/"
    Private Const IMAGE_URL_END_MATCH As String = """ alt=""Click to enlarge"""

    Private Const PRICE_START_MATCH As String = "<br><br><b>Price: "
    Private Const PRICE_END_MATCH As String = "</b><br><br>"

    Private Const PRODUCT_NAME_START_MATCH As String = "<td valign=top><b><big><big>"
    Private Const PRODUCT_NAME_END_MATCH As String = "</big></big></b>"


    Public Const LINK_FILENAME As String = "3DULinks.xml"

    Public Overrides ReadOnly Property BaseImageUrl() As String
        Get
            Return IMAGE_URL
        End Get
    End Property

    Public Overrides ReadOnly Property BasePageUrl() As String
        Get
            Return BASE_PAGE_URL
        End Get
    End Property

    Public Overrides ReadOnly Property LinkFilename() As String
        Get
            Return LINK_FILENAME
        End Get
    End Property

    Public Overrides ReadOnly Property UrlToRemove() As String
        Get
            Return URL_TO_REMOVE
        End Get
    End Property

    Public Overloads Overrides Sub Download()

    End Sub

    Protected Overrides Sub DownLoadPage(ByVal itemId As Integer)

    End Sub

    Public Sub New(ByVal imageDirectory As String, _
                    ByVal imageHolder As PictureBox)
        MyBase.New(imageDirectory, _
                    imageHolder)
    End Sub

End Class
